diff options
author | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-08-28 23:27:50 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-08-28 23:27:50 +0200 |
commit | 6f0d30ca4ecba351f1f7266b3187a625f0de60cd (patch) | |
tree | 685137b57d3b9dc6fbf7214857cff858b6825189 | |
parent | 6cb7a551b22af7d1284f437f2285988d8d8e92d8 (diff) | |
download | Chimère - projet Saclay-6f0d30ca4ecba351f1f7266b3187a625f0de60cd.tar.bz2 Chimère - projet Saclay-6f0d30ca4ecba351f1f7266b3187a625f0de60cd.zip |
Many improvment on the edit form - still work to do
-rw-r--r-- | forms.py | 2 | ||||
-rw-r--r-- | static/saclay/css/styles-saclay.css | 24 | ||||
-rw-r--r-- | static/saclay/images/close.png | bin | 856 -> 0 bytes | |||
-rw-r--r-- | static/saclay/images/minus.png | bin | 0 -> 259 bytes | |||
-rw-r--r-- | static/saclay/images/plus.png | bin | 0 -> 275 bytes | |||
-rw-r--r-- | static/saclay/js/interface.js | 1 | ||||
-rw-r--r-- | templates/chimere/blocks/map_params.html | 3 | ||||
-rw-r--r-- | templates/chimere/blocks/submited.html | 23 | ||||
-rw-r--r-- | templates/chimere/detail.html | 2 | ||||
-rw-r--r-- | templates/chimere/edit.html | 60 | ||||
-rw-r--r-- | views.py | 4 |
11 files changed, 69 insertions, 50 deletions
@@ -29,7 +29,7 @@ from chimere.widgets import TextareaWidget class MarkerForm(BaseMarkerForm): categories = forms.ChoiceField(choices=[], widget=forms.Select) - description = forms.CharField(widget=TextareaWidget) + description = forms.CharField(widget=TextareaWidget, required=False) def __init__(self, *args, **kwargs): super(MarkerForm, self).__init__(*args, **kwargs) diff --git a/static/saclay/css/styles-saclay.css b/static/saclay/css/styles-saclay.css index d33c708..ec78996 100644 --- a/static/saclay/css/styles-saclay.css +++ b/static/saclay/css/styles-saclay.css @@ -48,7 +48,7 @@ body, h2, #content, } /* alternative background */ -.edit h4, +ul#multimedia_list_content li, #chimere_itinerary_content div.n, #action, div.cloud h4, #detail_footer, .sidebar-handler:hover, #ul_categories li.main_category .subcategories li span{ @@ -60,9 +60,15 @@ div.cloud h4, #detail_footer, .sidebar-handler:hover, background-color:#00a3ff; } +/* blank */ +.edit h4{ + background-color:#fff; +} + /* * Borders */ +ul#multimedia_list_content li, .itinerary_label .label, #detail_footer, div.cloud h4, #areas, #detail, #main-map, div.warning, @@ -109,12 +115,17 @@ h4{ font-weight:bold; } +.fieldWrapper{ + padding:1px 4px; +} + .edit h3{ text-align:left; font-size:1.4em; width:100%; border-bottom:1px solid; - padding:0.6em 0.4em; + padding:0 0 0.4em 0; + margin:0; } .edit h4{ @@ -123,7 +134,7 @@ h4{ border-bottom:1px solid; width:100%; cursor:pointer; - margin-bottom:0.5em; + margin-top:0.5em; } .edit .minified{ @@ -141,6 +152,11 @@ h4{ .notice{ padding:0.4em; font-size:0.8em; + margin:0; +} + +.remove-media{ + cursor:pointer; } #personalform, #multimedia_list{ @@ -481,7 +497,7 @@ div.cloud h4{ } input#id_name{ - width:100%; + width:90%; } .single-line label{ diff --git a/static/saclay/images/close.png b/static/saclay/images/close.png Binary files differdeleted file mode 100644 index f9e8d04..0000000 --- a/static/saclay/images/close.png +++ /dev/null diff --git a/static/saclay/images/minus.png b/static/saclay/images/minus.png Binary files differnew file mode 100644 index 0000000..a95822f --- /dev/null +++ b/static/saclay/images/minus.png diff --git a/static/saclay/images/plus.png b/static/saclay/images/plus.png Binary files differnew file mode 100644 index 0000000..404a24a --- /dev/null +++ b/static/saclay/images/plus.png diff --git a/static/saclay/js/interface.js b/static/saclay/js/interface.js index 5a1c061..d6944ab 100644 --- a/static/saclay/js/interface.js +++ b/static/saclay/js/interface.js @@ -17,6 +17,7 @@ $(function(){ }; $("#action-carte").click(function(){ + $("#main-map").chimere('activateContextMenu'); $('#action-participate').removeClass('ui-state-active'); $('#action-carte').addClass('ui-state-active'); $('#edit-actions').hide(); diff --git a/templates/chimere/blocks/map_params.html b/templates/chimere/blocks/map_params.html index 15672c2..cc0a89c 100644 --- a/templates/chimere/blocks/map_params.html +++ b/templates/chimere/blocks/map_params.html @@ -81,8 +81,7 @@ }); } - - chimere_init_options["default_icon"] = '{{STATIC_URL}}img/marker-green.png'; + //chimere_init_options["default_icon"] = '{{STATIC_URL}}chimere/img/marker-green.png'; chimere_init_options["map_layers"] = [{{map_layers|safe|escape}}]; chimere_init_options['permalink_label'] = '{%trans "Permalink"%}'; chimere_init_options['permalink_element'] = document.getElementById('permalink'); diff --git a/templates/chimere/blocks/submited.html b/templates/chimere/blocks/submited.html new file mode 100644 index 0000000..a000fc0 --- /dev/null +++ b/templates/chimere/blocks/submited.html @@ -0,0 +1,23 @@ +{% load i18n %} + <div class='edit' id='submited-window'> +<p>En proposant un nouvel élément vous allez enrichir la carte avec des données +libres. Le fenêtre apparaît sur la carte après que l’utilisateur ait proposé son +lieu, sa balade.</p> +<p>En effet, une fois validée, votre contribution sera disponible pour que +chacun puisse la copier, la partager, la modifier selon les termes de la licence +<a href='https://creativecommons.org/licenses/by-sa/3.0/fr/'>Creative Commons paternité</a>.</p> +<p>Pour cela, notamment pour ce qui concerne les photos, merci de nous faire +partager des éléments dont vous êtes l'auteur ou assurez-vous que l'auteur +est d'accord avec ce type de distribution.</p> + </div> + <script type='text/javascript'> + $(function(){ + $("#submited-window").dialog({ + title:"{% trans "Thank you for your contribution to the project!" %}", + modal: true, + beforeClose: function() { + window.location = "{{index_url}}"; + } + }); + }); + </script> diff --git a/templates/chimere/detail.html b/templates/chimere/detail.html index 660bd59..13b2231 100644 --- a/templates/chimere/detail.html +++ b/templates/chimere/detail.html @@ -1,5 +1,5 @@ {% load i18n sanitize chimere_tags %} -<a href='#' class='close_img'><img src='{{STATIC_URL}}saclay/images/close.png' alt='close'/></a> +<a href='#' class='close_img'><img src='{{STATIC_URL}}chimere/img/close.png' alt='close'/></a> <h4>{{ marker.name }}</h4> <div id='detail_content'> {% if marker.default_pictures or marker.default_pictures or marker.default_multimedia_items%} diff --git a/templates/chimere/edit.html b/templates/chimere/edit.html index 6b107fe..b1aabfc 100644 --- a/templates/chimere/edit.html +++ b/templates/chimere/edit.html @@ -6,13 +6,10 @@ Consigne d'utilisation : Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc eu luctus ipsum. Donec vel urna a turpis consectetur consectetur. Vestibulum ut enim vel odio porta vulputate. </div> <p class='notice'>* {% trans "indicates a mandatory field" %}</p> - {% if error_message %} - <p>{{ error_message }}</p> - {% endif %} - <form enctype="multipart/form-data" method='post' action='.'> + <form enctype="multipart/form-data" method='post' action='.' id='marker_form'> {% csrf_token %} {%if form.point.errors %}<ul class="errorlist"><li>{% trans "Select a location for this new site" %}</li></ul>{%endif%} - {% comment %}{{point_widget}}{% endcomment%} + <input type='hidden' id='id_point' name='point'/> <div class="fieldWrapper"> <label for="id_name">{% trans "Name of the location"%} *</label> {% if form.name.errors %}<div class='errors'>{{ form.name.errors }}</div>{% endif %} @@ -69,29 +66,7 @@ {% endif %} <h4 id='head_multimedia' class='toggle minified'>Images, audios, vidéos</h4> - <div id='multimedia_list'> - <ul id='multimedia_list_content'> - </ul> - <button id='add_multimedia_list'>{% trans "Add" %}</button> - </div> - <div id='multimedia_form' title="{% trans "Add multimedia from your computer or a site"%}"> - <div class='notice'>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc eu luctus ipsum. Donec vel urna a turpis consectetur consectetur. Vestibulum ut enim vel odio porta vulputate. - </div> - <div class="fieldWrapper"> - <label for="multimedia_list_name">{% trans "Name" %}</label> - <input type='text' id='multimedia_list_name' name='multimedia_name'> - </div> - <div class="fieldWrapper"> - <input type='radio' value='image' id='media_type_image' name="multimedia_type"> {% trans "Image" %} - <input type='radio' value='other' id='media_type_other' name="multimedia_type"> {% trans "Audio, video, other..." %} - </div> - <div class="fieldWrapper"> - <label for='multimedia_file'>{% trans "Download"%}</label> <input type='file' name='multimedia_file' id='multimedia_file'> - <p class='notice'>{% trans "Or" %}</p> - <label for='multimedia_url'>{% trans "Web address"%}</label> <input type='text' name='multimedia_url' id='multimedia_url'> - </div> - <button>{% trans "Add" %}</button> - </div> + {% alternate_multimedia formset_multi formset_picture %} <h4 id='head_personalform' class='toggle minified'>{% trans "Personal information"%}</h4> <div id='personalform'> <div class="fieldWrapper"> @@ -114,17 +89,10 @@ <p>{% trans "Upload in progress. Please wait..." %}</p> <p><img src='{{STATIC_URL}}chimere/img/ajax-loader.gif'/></p> </div> + <p><button id='marker_form_submit' type='button'>{% trans 'Propose'%}</button></p> <script text='text/javascript'> $(function(){ - $("#multimedia_form").dialog({ - autoOpen:false, - modal:true, - width:400, - height:300}); - $('#add_multimedia_list').click(function(){ - $("#multimedia_form").dialog("open"); - return false; - }); + $("#main-map").chimere('activateMarkerEdit'); $('.toggle').click(function(){ var div_item = $(this).next(); div_item.toggle(); @@ -140,15 +108,23 @@ modal: true, resizable:false, height:110, - autoOpen:false + autoOpen:false, + dialogClass:'alert-box' } ); - function displayProgress(){ + $('#marker_form_submit').click(function(){ + // tests... $("#upload_in_progress").dialog('open'); - return true; - } + tinyMCE.triggerSave(); + $.post("{% url edit %}", $('#marker_form').serialize(), + function(data){ + $("#frm-edit-marker").html(data); + $("#panel").scrollTop(0); + $("#upload_in_progress").dialog('close'); + } + ); + }); }); </script> - <p><input type='submit' onclick='saveExtent();displayProgress();' value="{% trans 'Propose'%}"/></p> </form> </div> @@ -44,6 +44,10 @@ def edit(request, area_name="", item_id=None, submited=False): declared_fields = PropertyModel.objects.filter(available=True).all() filtered_properties = PropertyModel.objects.filter(available=True, subcategories__id__isnull=False).all() + if hasattr(formset_multi, 'errors'): + print formset_multi.errors + if hasattr(formset_picture, 'errors'): + print formset_picture.errors response_dct.update({ 'actions':actions, 'action_selected':('contribute', 'edit'), |